#include<stdio.h>
#include<conio.h>
long arr[100001];
long fill(long to){
    long i;
    
    return arr[to];
}
int main(){
    long n,k,cach=1,max,i,j;
    scanf("%ld%ld",&n,&k);
    max=(n-1)/(k+1)+1;
    arr[0]=1;
    fill(n);
    for(i=0;i<=n;i++)arr[i]=1;
    for(i=1;i<=max;i++){
        for(j=1;j<=to;j++){
            arr[j]+=arr[j-1];
            arr[j]%=2111992l;
        }
        cach+=fill(n-(i-1)*k-i);
        cach%=2111992l;
    }
    printf("%ld",cach);
    getch();
    return 0;
}
